我們會使用SQL來檢查資料的正確性,以書本來說:
在library_app/models/library_book.py加入:
_sql_constraints = [
("library_book_name_date_uq","UNIQUE (name, date_published)","Title and publication date must be unique."),
("library_book_check_date","CHECK (date_published <= current_date)","Publication date must not be in the future."),
]
_sql_constraints 格式為(name, sql, message)
name 是該識別碼的名稱
sql SQL的語法 (UNIQUE CHECK)
message 在發生錯誤時向使用者呈現錯誤訊息
odoo的base models
前面我們也有創建新的model,也有使用odoo模組所提供的models,這也分成兩種類型:
Information repository, ir.*
用於儲存odoo框架所需的基本數據,例如Menus, Views, Models,and Actions
ex:
ir.actions.act_window for Windows Action
ir.config_parameter for global configuration options
ir.ui.menu for Menu Items
Resources, res.*
可供任何module使用的基本資料
ex:
res.partner 代表業務合作夥伴,例如客戶和供應商,以及地址
res.company 用於公司數據
res.groups 用於應用程式安全性群組